using System; // using指令必须放在最外层

namespace CSharpPro._1030;

// 抽象类（修改类名避免冲突，如改为 AbstractUserTest）
public abstract class AbstractUserTest
{
    // 三个抽象方法
    public abstract void M1();
    public abstract void M2();
    public abstract void M3();
}

// 子类继承抽象类
public class UserTestImpl : AbstractUserTest
{
    public override void M1()
    {
        Console.WriteLine("子类实现的M1方法");
    }

    public override void M2()
    {
        Console.WriteLine("子类实现的M2方法");
    }

    public override void M3()
    {
        Console.WriteLine("子类实现的M3方法");
    }
}

// 测试类（如需单独的测试方法，可放在这里）
public class UserTest
{
    public void TestPrint()
    {
        // 调用测试
        AbstractUserTest test = new UserTestImpl();
        test.M1();
        test.M2();
        test.M3();
    }
    
    
}